1. Wstęp do CDI 2. Beans 3. Zarządzanie beanami 4. Scopes and context 5. Events 6. Interceptors 7. Decorator |
Zdarzenia synchroniczne: Możemy je wywołać przez klasę CDI lub przez wstrzyknięcie referencji Event<> Wywołanie przez klasę CDI zdarzenia wykonujemy przez metodę:
@Observes(notifyObserver = Reception.IF_EXISTS)) Reception domyślnie ma wartość ALWAYS, oznacza że zdarzenie wykonane jest zawsze. Reception.IF_EXISTS oznacza że zdarzenie zostanie wykonane jeżeli bean został stworzony (czyli odwołaliśmy się do niego). Drugi parametr - during (domyślnie IN_PROGRESS) - @Observes(during=IN_PROGRESS), może posiadać następujące wartości: IN_PROGRESS - wywołane observes natychmiast AFTER_SUCCESS - jeżeli transakcja zakończona sukcesem AFTER_FAILURE - jeżeli transakcja zakończona błędem AFTER_COMPLETION - po zakończeniu transakcji BEFORE_COMPLETION - przed rozpoczęciem transakcji Zdarzenia asynchroniczne: Wdarzenie możemy wywołać przez klasę CDI:
|
---|---|